﻿namespace Cavy.UdpClient.Serializable
{
    public static class NetDataReaderExtension
    {
        public static void GetInt(this NetDataReader reader, ref int value1, ref int value2)
        {
            value1 = reader.GetInt();
            value2 = reader.GetInt();
        }
        
        public static void GetInt(this NetDataReader reader, ref int value1, ref int value2, ref int value3)
        {
            value1 = reader.GetInt();
            value2 = reader.GetInt();
            value3 = reader.GetInt();
        }
        
        public static void GetInt(this NetDataReader reader, ref int value1, ref int value2, ref int value3, ref int value4)
        {
            value1 = reader.GetInt();
            value2 = reader.GetInt();
            value3 = reader.GetInt();
            value4 = reader.GetInt();
        }
        
        public static void GetInt(this NetDataReader reader, ref int value1, ref int value2, ref int value3, ref int value4, ref int value5)
        {
            value1 = reader.GetInt();
            value2 = reader.GetInt();
            value3 = reader.GetInt();
            value4 = reader.GetInt();
            value5 = reader.GetInt();
        }
        
        public static void GetInt(this NetDataReader reader, ref int value1, ref int value2, ref int value3, ref int value4, ref int value5, ref int value6)
        {
            value1 = reader.GetInt();
            value2 = reader.GetInt();
            value3 = reader.GetInt();
            value4 = reader.GetInt();
            value5 = reader.GetInt();
            value6 = reader.GetInt();
        }
        
        public static void GetFloat(this NetDataReader reader, ref float value1, ref float value2)
        {
            value1 = reader.GetFloat();
            value2 = reader.GetFloat();
        }
        
        public static void GetFloat(this NetDataReader reader, ref float value1, ref float value2, ref float value3)
        {
            value1 = reader.GetFloat();
            value2 = reader.GetFloat();
            value3 = reader.GetFloat();
        }
        
        public static void GetFloat(this NetDataReader reader, ref float value1, ref float value2, ref float value3, ref float value4)
        {
            value1 = reader.GetFloat();
            value2 = reader.GetFloat();
            value3 = reader.GetFloat();
            value4 = reader.GetFloat();
        }
        
        public static void GetFloat(this NetDataReader reader, ref float value1, ref float value2, ref float value3, ref float value4, ref float value5)
        {
            value1 = reader.GetFloat();
            value2 = reader.GetFloat();
            value3 = reader.GetFloat();
            value4 = reader.GetFloat();
            value5 = reader.GetFloat();
        }
        
        public static void GetFloat(this NetDataReader reader, ref float value1, ref float value2, ref float value3, ref float value4, ref float value5, ref float value6)
        {
            value1 = reader.GetFloat();
            value2 = reader.GetFloat();
            value3 = reader.GetFloat();
            value4 = reader.GetFloat();
            value5 = reader.GetFloat();
            value6 = reader.GetFloat();
        }
    }
}